package cn.fansunion.leecode.math;

/**
 * 1952. 三除数<br/>
 * 给你一个整数 n 。如果 n 恰好有三个正除数 ，返回 true ；否则，返回 false 。

如果存在整数 k ，满足 n = k * m ，那么整数 m 就是 n 的一个 除数 。

来源：力扣（LeetCode）
链接：https://leetcode-cn.com/problems/three-divisors
著作权归领扣网络所有。商业转载请联系官方授权，非商业转载请注明出处。
 * @author wen.lei@brgroup.com
 *
 * 2022-3-9
 */
public class ThreeDivisors {
    /*   示例 1：
    
    输入：n = 2
    输出：false
    解释：2 只有两个除数：1 和 2 。
    示例 2：
    
    输入：n = 4
    输出：true
    解释：4 有三个除数：1、2 和 4 。
     
    
    提示：
    
    1 <= n <= 104*/
        /**
         * 恰好有三个正除数：1个数肯定，有1和自己本身至少2个除数（1除外）；有且只有3个，就是1到n，(1,n)之间有且仅有1个除数
         * @param n
         * @return
         */
        public boolean isThree(int n) {
            //(1,n)之间有且仅有1个除数
            int count=0;
            for(int i=2;i<n;i++) {
                if(n%i==0) {
                    count++;
                }
            }
            return count==1;
    }
}
